import { CSSProperties, LegacyRef } from "react";

// 运行环境
export enum Env {
    debug = 0,
    release = 1
}

// 当前运行环境
export const RunEnv = Number.parseInt(Env.release.toString())

// 性别
export enum Sex {
    boy = 1,
    girl = 2
}

// 方向
export enum Axis {
    horizontal = "horizontal",
    vertical = "vertical"
}


export interface PureStandardProps<T = any> {
    /** 组件的唯一标示, 保持整个页面唯一 */
  id?: string
  
  /** 同 `class`，在 React/Nerv 里一般使用 `className` 作为 `class` 的代称 */
  className?: string
  /** 组件的内联样式, 可以动态设置的内联样式 */
  style?: string | CSSProperties
  /** 如果列表中项目的位置会动态改变或者有新的项目添加到列表中，
   * 需要使用 `wx:key` 来指定列表中项目的唯一的标识符。
   */
  key?: string | number
  /** 组件是否显示, 所有组件默认显示 */
  hidden?: boolean
  /** 动画属性 */
  animation?: { actions: object[] }
  /** 引用 */
  ref?: LegacyRef<T>
  /**
   * 渲染 HTML
   * @see https://taro-docs.jd.com/taro/docs/html
   */
  dangerouslySetInnerHTML?: {
    __html: string;
  }
}

export enum EventKey {
  
  // 订单确认-选取地址
  OrderConfirmPickAddress = "OrderConfirmPickAddress",

  // 订单-下单
  OrderConfirm = "OrderConfirm",

  // 订单-已支付
  OrderPayed = "OrderPayed",

  // 订单-取消
  OrderCanceled = "OrderCancel",

  // 商品退款提交
  GoodsAfterServiceApply = "GoodsAfterServiceApply",

  // 得到优惠券
  CouponGetd = "CouponGetd",

  // 登录状态改变
  LoginStatusChange = "LoginStatusChange",

  // 购物车item菜单尝试打开
  ShopcartItemMenuTrialOpen = "ShopcartMenuTrialOpen"
}